In computer networking, dynamic host configuration protocol (DHCP) is used for dynamically allocating network configuration parameters, such as Internet protocol (IP) addresses, to host computing systems and other IP addressable devices in a network. Generally, a DHCP client sends a configuration request to a DHCP server and the DHCP server sends an IP address to the DHCP client based on the DHCP server's configuration. Information is ordinarily transmitted within networks in packets and the term packet refers to a unit of data communicated within a network. A packet typically includes a packet source identifier and a packet destination identifier used to navigate the packet data through a network. The term packet may refer to a unit of data through a network. The term packet may refer to a unit of data communicated at any level of an open systems interconnection (OSI) model and between levels of the OSI model.
Generally, the DHCP server assigns unique IP addresses to host computing systems using DHCP static bindings, then releases and renews these IP addresses as the host computing systems leave and re-join the network. A security administrator ordinarily configures DHCP static bindings using media access control (MAC) addresses within a file. Similarly, a security administrator can configure the DHCP static bindings using a pool of IP addresses from which a free IP address can be allocated/assigned when a host computing system requests for a configuration.
One challenge with defining the DHCP static bindings in terms of the MAC addresses/pool of IP addresses is the need for the administrator to continually update the DHCP static bindings to keep abreast of changes in a network. Machines may be added or removed from the network requiring corresponding changes to the DHCP static bindings.
Further, in complex networks in which changes are many and frequent, the need to update the DHCP static bindings to keep pace with changes to network configuration, such as user configured DHCP static bindings, virtual machine (VM) inventory objects and the like can pose a significant challenge. This is even more a challenge in a virtual network environment where VMs may be dynamically added and/or removed in which case the DHCP server may need to be manually reconfigured.